package com.szpx.service;

import com.github.pagehelper.PageInfo;
import com.szpx.entity.LJK.LJKCoach;

import java.util.List;

public interface LJKCoachService  {
    /**
     * 根据ID查询教练信息
     * @param id 教练ID
     * @return 教练对象
     */
    LJKCoach getCoachById(Long id);

    /**
     * 查询所有在职教练
     * @return 教练列表
     */
    List<LJKCoach> getAllCoaches();

    /**
     * 分页查询教练数据
     *
     * @param pageNum  页码
     * @param pageSize 每页数量
     * @param ljkCoach
     * @return 教练列表
     */
    PageInfo<LJKCoach> getCoachesByPage(int pageNum, int pageSize, LJKCoach ljkCoach);

    /**
     * 添加新教练
     * @param coach 教练对象
     * @return 是否成功
     */
    boolean addCoach(LJKCoach coach);

    /**
     * 更新教练信息
     * @param coach 教练对象
     * @return 是否成功
     */
    boolean updateCoach(LJKCoach coach);

    /**
     * 删除教练（逻辑删除或物理删除）
     * @param id 教练ID
     * @return 是否成功
     */
    boolean deleteCoach(Long id);

    /**
     * 根据手机号查找教练
     * @param phone 手机号
     * @return 教练对象
     */
    LJKCoach getCoachByPhone(String phone);

    /**
     * 批量添加教练
     * @param coaches 教练列表
     * @return 成功数量
     */
    int batchAddCoaches(List<LJKCoach> coaches);

}
